//
//  main.m
//  oc
//
//  Created by dllo on 16/7/8.
//  Copyright © 2016年 dllo. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "Person.h"

int main(int argc, const char * argv[]) {
   
//    NSArray *arr1 = @[@"理发店",@"积分皇冠",@"如图"];
//    NSMutableArray *arr2 = [NSMutableArray array];
//    for (int i = 2; i >= 0; i--) {
//        [arr2 addObject:arr1[i]];
//    }
////    NSLog(@"%@",arr2);
//    
//    
//    NSDictionary *dic = @{@"name":@"ns",@"sex":@"nan",@"age":@"23"};
//    
//    NSArray *arr3 = [dic allKeys];
//    for (NSInteger i = 0; i < arr3.count; i++) {
//        NSString *key = arr3[i];
//    NSString *arr4 = [dic objectForKey:arr3[i]];
//        NSLog(@"%@,%@",key,arr4);
//    }
    
//    NSLog(@"%@",arr3);
    
    
    //枚举器
//    NSEnumerator依赖于集合类型（数组，字典，集合），不能单独使用
//    NSEnumerator *stringArrayEnumerator = [stringArr ];
//    id value = nil;
//    while ((value = [stringArrayEnumerator nextObject] != nil)) {
//        NSLog(@"%@",value);
//    }
//    
//    NSEnumerator *reverse = [stringArr reverseObjectE];
//    
  //字典枚举器
//    NSEnumerator *dicEnumerator = [person objectEnumerator];
//    id dicValue = nil;
//    while (dicValue = [dicEnumerator nextObject]) {
//        NSLog(@"%@",dicValue);
//    }
//    
    
    //字典无序，没有倒序
    
    //set没有字面量
//    NSSet *set = [NSSet setWithObjects:@"12",@"13",@"14",@"15",@"16", nil];
//    
//    NSEnumerator *setEnumerator = [set objectEnumerator];
//    id setValue = nil;
//    while (setValue = [setEnumerator nextObject]) {
//        NSLog(@"%@",setValue);
//    }
    
    //快速枚举 for ... in
    
//    for (NSString *string in arr1) {
//        NSLog(@"%@",string);
//    }
//    
//    
//    
//    NSString *str2 = [NSString string];
//    for (NSString *str in arr1) {
//        str2 = [str2 stringByAppendingString:str];
//    }
//    NSLog(@"%@",str2);
    
//
//    for (NSString *dic in person) {
//        NSLog(@"%@",);
//    }
//
    
//快速枚举一个集合
//    for (NSString *anyObject in set) {
////        NSLog(@"%@",anyObject);
//    }
    //for in怎么倒序输出
    
//    NSMutableDictionary *dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"sun",@"name",@"33",@"age", nil];
//    NSString *str = [dic objectForKey:@"name"];
//    NSArray *arr2 = [dic allKeys];
//    NSMutableArray *arr3 = [[NSMutableArray alloc] init];
//    for (NSInteger i = 0; i < 2; i++) {
//        arr3[i] = [dic objectForKey:arr2[i]];
//    }
//    NSLog(@"%@",arr3);
//    NSLog(@"%@",[dic allValues]);
//    [dic removeAllObjects];
//    [dic removeObjectForKey:@"name"];
//    [dic allKeysForObject:@"sun"];
//    NSLog(@"%@",dic);
   
//    NSLog(@"%@",arr2);
//    NSLog(@"%@",str);
//    NSArray *arr = @[@"1",@"2"];
//    NSInteger a = 1;
////    NSLog(@"%ld",a);
////    NSLog(@"%@",arr);
//    NSArray *arr6 = @[@"p",@"g"];
//    NSDictionary *dic = @{arr:arr6,arr6:arr};
////    NSLog(@"%@",dic);
//    NSDictionary *dic8 = @{arr6:dic};
//    NSDictionary *dic7 = @{arr6:arr,dic8:dic};
////    NSLog(@"%@",arr6);
//    
//    
//    NSString *st = @"dfd";
//    NSLog(@"%@",st);
//    NSLog(@"%@",dic7);
    
    
    
    //排序
    //参数1 Key：排序条件
//    参数2 acending YES(升序) NO(江旭)
//    NSArray *arr = @[@1,@2,@3,@4];
//        NSArray *arr1 = @[@"理发店",@"积分皇冠",@"如图"];
//    NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"self" ascending:NO];
//    arr1 = [arr1 sortedArrayUsingDescriptors:@[sort]];
//    NSLog(@"%@",arr1);
//
//    NSMutableArray *mutableArr = [NSMutableArray arrayWithObject:@11,@12,nil];
//    [mutableArr sortedArrayUsingDescriptors:@[]];
    
    //排序：可变数组和不可变数组通过sort排序调用的方法不同
    //不可变数组，排序后需要生成新的数组
//    Person *per1 = [[Person alloc] init];
//    per1.name = @"af";
//    per1.age = 23;
//    Person *per2 = [[Person alloc] init];
//    per2.name = @"bv";
//    per2.age = 89;
//    Person *per3 = [[Person alloc] init];
//    per3.name = @"cf";
//    per3.age = 78;
//    NSArray *perArray = @[per1,per2,per3];
////    NSLog(@"%@",perArray);
//    //根据名字排序
//    NSSortDescriptor *perSort = [[NSSortDescriptor alloc] initWithKey:@"age" ascending:NO];
//    
//    perArray = [perArray sortedArrayUsingDescriptors:@[perSort]];
//    
////    NSLog(@"%@",perArray);
//    
//    //排序2
//    NSArray *sortString =  @[@"a",@"b",@"d",@"c",@"e"];
//    sortString = [sortString sortedArrayUsingSelector:@selector(compare:)];
//    NSLog(@"%@",sortString);
    
    NSString *str = @"abDde";
//    NSString *str1 = [str substringFromIndex:2];
//    NSString *str2 = [str substringToIndex:5];
//    NSString *str3 = [str substringWithRange:NSMakeRange(2, 3)];
//    NSString *str4 = [str uppercaseString];
//    NSString *str5 = [str lowercaseString];
//    NSString *str6 = [str capitalizedString];
    NSArray *arr1 = [str componentsSeparatedByString:@"D"];
    NSString *str7 = [arr1 lastObject];
    NSString *str8 = [arr1 componentsJoinedByString:@"\n"];
    NSMutableDictionary *dic1 = [NSMutableDictionary dictionary];
    
    NSLog(@"%@",dic1);
    
    
    
    
    
    
    
    
    
    
    
    return 0;
}
